15 research outputs found
Implementation of mutual exclusion in VHDL
In VHDL it is difficult to implement mutual exclusion at an abstract level since atomic actions are required. A local status model and an arbiter model are presented to achieve mutual exclusion in VHDL. Shared data, protected by a mutual exclusion mechanism, cannot be modelled as a simple, resolved VHDL signal since no resolution function is able to return the correct value. By changing the signal type to a special record type this problem can be solved, using the arbiter model. The specification language Task Level VHDL (TLVHDL) has been developed to specify communication and synchronization mechanisms at an abstract level. In TLVHDL the abovementioned problems are not encountered. A back end compiler converts the abstract TLVHDL description into a VHDL specification, according to a chosen mutual exclusion model. All modifications are handled by the computer and are of no concern to the designer